home *** CD-ROM | disk | FTP | other *** search
/ Champak 106 / Vol 106.iso / games / 5_in_row.swf / scripts / frame_3 / DoAction.as
Encoding:
Text File  |  2010-04-12  |  4.4 KB  |  223 lines

  1. rndNumber = function(pMin, pMax, pDigits)
  2. {
  3.    var d = Math.pow(10,pDigits);
  4.    return Math.round((pMin + Math.random() * (pMax - pMin)) * d) / d;
  5. };
  6. initRndArray = function(pLoops)
  7. {
  8.    aRnd = new Array();
  9.    var i = 0;
  10.    while(i < pLoops)
  11.    {
  12.       var k = 1;
  13.       while(k <= maxTileNr)
  14.       {
  15.          aRnd[i * maxTileNr + k - 1] = k;
  16.          k++;
  17.       }
  18.       i++;
  19.    }
  20. };
  21. playSound = function(pSound)
  22. {
  23.    mcSounds.gotoAndPlay(pSound);
  24. };
  25. clearBoard = function()
  26. {
  27.    var i = 0;
  28.    while(i < tilesMax)
  29.    {
  30.       aBoard[i] = 0;
  31.       i++;
  32.    }
  33.    clearLinks();
  34. };
  35. clearLinks = function()
  36. {
  37.    var i = 0;
  38.    while(i < tilesMax)
  39.    {
  40.       this["aLinks" + i] = new Array(2);
  41.       var k = 0;
  42.       while(k < 2)
  43.       {
  44.          this["aLinks" + i][k] = 0;
  45.          k++;
  46.       }
  47.       i++;
  48.    }
  49.    var i = 0;
  50.    while(i < yMax)
  51.    {
  52.       setLink(i * xMax + xMax - 1,0,-1);
  53.       i++;
  54.    }
  55.    var i = 0;
  56.    while(i < xMax)
  57.    {
  58.       setLink(i + xMax * (yMax - 1),1,-1);
  59.       i++;
  60.    }
  61. };
  62. setLink = function(pNumber, pLink, pValue)
  63. {
  64.    this["aLinks" + pNumber][pLink] = pValue;
  65. };
  66. getLink = function(pNumber, pLink)
  67. {
  68.    return this["aLinks" + pNumber][pLink];
  69. };
  70. clearStartPosArray = function()
  71. {
  72.    var i = 0;
  73.    while(i < startPosMax)
  74.    {
  75.       aStartPos[i] = 0;
  76.       i++;
  77.    }
  78. };
  79. makeNewTile = function()
  80. {
  81.    currentTileNr = nextTileNr;
  82.    nextTileNr = aRnd.splice(random(aRnd.length),1)[0];
  83.    if(aRnd.length == 0)
  84.    {
  85.       initRndArray(rndLoops);
  86.    }
  87.    mcNextTile.gotoAndStop(nextTileNr + 1);
  88.    startPos = rndNumber(0,startPosMax - 1,0);
  89.    mcStartPosTile.gotoAndStop(currentTileNr + 1);
  90.    setStartPos();
  91. };
  92. setStartPos = function()
  93. {
  94.    clearStartPosArray();
  95.    aStartPos[startPos] = currentTileNr;
  96.    getStartPos();
  97.    mcStartPosTile._x = aStartTilePos[startPos * 2];
  98.    mcStartPosTile._y = aStartTilePos[startPos * 2 + 1];
  99. };
  100. getStartPos = function()
  101. {
  102.    if(startPos < xMax)
  103.    {
  104.       line = "col";
  105.       dir = 1;
  106.       row = 0;
  107.       col = startPos;
  108.    }
  109.    else if(startPos >= xMax && startPos < xMax + yMax)
  110.    {
  111.       line = "row";
  112.       dir = -1;
  113.       row = startPos - xMax;
  114.       col = xMax - 1;
  115.    }
  116.    else if(startPos >= xMax + yMax && startPos < 2 * xMax + yMax)
  117.    {
  118.       line = "col";
  119.       dir = -1;
  120.       row = yMax - 1;
  121.       col = 2 * xMax - startPos + yMax - 1;
  122.    }
  123.    else
  124.    {
  125.       line = "row";
  126.       dir = 1;
  127.       row = 2 * yMax - startPos + 2 * xMax - 1;
  128.       col = 0;
  129.    }
  130. };
  131. initDrop = function()
  132. {
  133.    mcStartPosTile.gotoAndStop(1);
  134.    posCounter = 0;
  135.    line != "row" ? (maxPos = yMax) : (maxPos = xMax);
  136.    loopFlag = false;
  137. };
  138. getBoardPos = function(pNr)
  139. {
  140.    if(line == "row")
  141.    {
  142.       return row * xMax + (col + dir * pNr);
  143.    }
  144.    return (row + dir * pNr) * xMax + col;
  145. };
  146. initCheck = function()
  147. {
  148.    var i = 0;
  149.    while(i < xMax)
  150.    {
  151.       this["aTilesToKillCol" + i] = new Array();
  152.       i++;
  153.    }
  154.    var i = 0;
  155.    while(i < yMax)
  156.    {
  157.       this["aTilesToKillRow" + i] = new Array();
  158.       i++;
  159.    }
  160.    posCounter = 0;
  161.    line = "row";
  162.    dir = 1;
  163.    row = 0;
  164.    col = 0;
  165. };
  166. initTimer = function()
  167. {
  168.    level >= aLevelTimes.length ? (time = 3) : (time = aLevelTimes[level]);
  169. };
  170. getTilesOnBoard = function()
  171. {
  172.    tilesOnBoard = 0;
  173.    var i = 0;
  174.    while(i < tilesMax)
  175.    {
  176.       if(aBoard[i] != 0)
  177.       {
  178.          tilesOnBoard++;
  179.       }
  180.       i++;
  181.    }
  182.    return tilesOnBoard;
  183. };
  184. killAllTiles = function()
  185. {
  186.    var i = 0;
  187.    while(i < tilesMax)
  188.    {
  189.       this["mcTile" + i].removeMovieClip();
  190.       i++;
  191.    }
  192. };
  193. showPause = function()
  194. {
  195.    var tFormat = new TextFormat();
  196.    tFormat.align = "center";
  197.    tFormat.size = 56;
  198.    tFormat.color = 0;
  199.    tFormat.font = "HOUSE3009-Cyberspace";
  200.    this.createTextField("tPauseS",50000,102,120,282,122);
  201.    tPauseS.embedFonts = true;
  202.    tPauseS.selectable = false;
  203.    tPauseS.text = "game\rpaused";
  204.    tPauseS.setTextFormat(tFormat);
  205.    tFormat.color = 13369344;
  206.    this.createTextField("tPause",50001,100,116,282,122);
  207.    tPause.embedFonts = true;
  208.    tPause.selectable = false;
  209.    tPause.text = "game\rpaused";
  210.    tPause.setTextFormat(tFormat);
  211. };
  212. killPause = function()
  213. {
  214.    pause = false;
  215.    Key.removeListener(pauseListener);
  216.    hidePause();
  217. };
  218. hidePause = function()
  219. {
  220.    tPauseS.removeTextField();
  221.    tPause.removeTextField();
  222. };
  223.